변수와 상수
✒️ 2025-05-15 15:48 내용 수정
수제비 2024 정보처리기사 필기 5판 1권의 내용을 정리
TCPSchool의 내용을 정리
변수
프로그램에서 데이터를 저장하기 위한 메모리 공간
- Java의 변수(변수(Variables)와 상수(Constant)), Python의 변수(변수), JavaScript의 변수(변수와 상수)도 참고.
- 저장된 값은 변경될 수 있다.
- 포인터 변수 : 데이터가 저장된 메모리의 주소를 저장하고 처리하는 변수
- Java의 참조형 변수도 객체의 주소를 저장한 변수이다.
이름 생성 규칙
- 이름 생성 규칙은 Java의 변수 이름 규칙과 매우 비슷하다.
- 변수 이름은 영문 대소문자, 숫자, 언더스코어
_로만 구성된다. - 변수 이름은 숫자로 시작될 수 없다.
- 변수 이름 사이에 공백을 포함할 수 없다.
- 변수 이름으로 미리 지정된 키워드(예약어)는 사용할 수 없다.
변수와 메모리
- 메모리 주소 : 물리적인 메모리 공간을 서로 구분하기 위해 사용되는 일종의 식별자(identifier) 이다.
- 변수는 메모리 주소를 기억하며, 변수를 참조할 때는 해당 주소에 저장된 데이터를 참조한다.
- 변수는 데이터가 저장된 메모리 주소와 저장된 데이터의 길이, 형태 등의 정보도 같이 저장한다.
- 메모리 공간에는 8 비트로 이루어진 1 바이트 데이터가 저장되며, 낮은 주소부터 데이터가 저장되면 메모리 주소가 1 바이트 씩 증가한다.
- 비트(bit) : 컴퓨터에서 데이터를 처리하기 위한 최소 단위(2진수)
- 바이트(byte) : 8 비트가 모인 단위이며, 한 문자를 표현할 수 있는 최소 단위
변수 선언
- 변수를 사용하기 전에 먼저 변수를 저장하기 위한 메모리 공간을 할당 받는 행위이다.
- 변수만 선언하거나, 변수의 선언과 동시에 초기화할 수 있다.
타입 변수이름;
타입 변수이름 = 값;
타입 변수이름1, 변수이름2, ... = 초깃값1, 초깃값2, ...;
상수
변수처럼 데이터를 저장하지만 저장된 데이터를 변경할 수 없는 메모리 공간
- 리터럴 상수(literal constant) : 변수와 달리 데이터가 저장된 메모리 공간을 가리키는 이름이 없는 값 그 자체
- Java의 변수(Variables)와 상수(Constant)#리터럴(Literal) 참고.
123 // 정수형
1.23 // 실수형
'a' // 문자형
"Apple"
- 심볼릭 상수(symbolic constant) : 변수와 마찬가지로 메모리 공간을 가리키는 이름이 있는 상수다.
const키워드를 사용하여 선언하거나#define선행지시자를 통한 매크로를 이용하여 선언할 수 있다.
const int NUM = 5;
#define PI 3.14